跳到主要内容

一个vue的头像组件 view-avatar

· 阅读需 3 分钟

最近整理项目中发现,头像这个应用的场景很多,而且还要一些需要特殊处理的比如想有生成头像的这种操作。于是便着手搞了一个头像的组件发布到npm中 view-avatar

  1. 为什么要有这个组件?

    因为项目中使用头像的地方,经常需要处理图片出错的情况。其他情况还有就是需要有生成头像这种功能,只需要生成类似带有文字的头像即可。

  2. 有没有类似的组件?

    当然是有前期调研过的,比如vue-avatar,star数也很多。但是为什么无法满足需求呢,第一生成头像的文字颜色值和底色值需要自己去配置,作为开发者来说这点很麻烦,因为有时自己也不知道该用什么颜色。

    第二它生成的图片显示的文案无法通过slot的方式进行自定义,无法自定义配置想显示的图片文字内容,第三没有src出现错误时的处理

由此决定开发一个可以自定义的,各种方式可以自己配置的头像组件

和vue-avatar对比

view-avatarvue-avatar
可以根据src显示图片YY
根据文案内容生成图片YY
生成图片的文案内容可以自定义YY
可以自定义文案文字颜色和底色YY
可以设置图片的宽高YY
可以设置图片的样式,完全自定义YY
文字颜色和底色可以通过配置随机使用YN
可以在图片加载失败的情况下自定义处理YN
具备tooltips显示头像名字的辅助功能YN

上面是大体的对比,当然vue-avatar的也有一些其他的优点,比如使用username,它的更加智能些。view-avatar的处理方式是抽取了最后两个字符进行显示,简单一些。然而view-avatar有几个slot的处理方式,比如 imgError(图片错误处理)、text(文字自定义显示)、默认的slot(直接自定义图片)等